#include "RNOH/PackageProvider.h"
#include "generated/RNOHGeneratedPackage.h"
#include "SafeAreaViewPackage.h"
#include "GestureHandlerPackage.h"
#include "DateTimePickerPackage.h"
#include "RTNCameraPackage.h"
#include "SkiaPackage.h"
#include "ReanimatedPackage.h"
#include "SVGPackage.h"
#include "ImageCropPickerPackage.h"
#include "RNCVideoPackage.h"
#include "RNAmapGeolocationPackage.h"
#include "MapsPackage.h"
#include "RNCNetInfoPackage.h"
#include "RTNCenteredTextPackage.h"
#include "CameraRollPackage.h"
#include "RNOrientationPackage.h"
#include "SQLitePluginPackage.h"
#include "PickerPackage.h"
#include "ViewPagerPackage.h"

using namespace rnoh;

std::vector<std::shared_ptr<Package>> PackageProvider::getPackages(Package::Context ctx) {
    return {
         std::make_shared<RNOHGeneratedPackage>(ctx),
         std::make_shared<SafeAreaViewPackage>(ctx),
         std::make_shared<GestureHandlerPackage>(ctx),
         std::make_shared<DateTimePickerPackage>(ctx),
         std::make_shared<RTNCameraPackage>(ctx),
         std::make_shared<SkiaPackage>(ctx),
         std::make_shared<ReanimatedPackage>(ctx),
         std::make_shared<SVGPackage>(ctx),
         std::make_shared<ImageCropPickerPackage>(ctx),
         std::make_shared<RNCVideoPackage>(ctx),
         std::make_shared<RNAmapGeolocationPackage>(ctx),
         std::make_shared<MapsPackage>(ctx),
         std::make_shared<RNCNetInfoPackage>(ctx),
         std::make_shared<RTNCenteredTextPackage>(ctx),
         std::make_shared<CameraRollPackage>(ctx),
         std::make_shared<RNOrientationPackage>(ctx),
         std::make_shared<SQLitePluginPackage>(ctx),
         std::make_shared<PickerPackage>(ctx),
         std::make_shared<ViewPagerPackage>(ctx)
    };
}